【任务队列】huey-理解

应用场景

参考:https://www.jianshu.com/p/dba08adc725d

一个计算任务往往需要一个开启一个进程,而每个进程可以配置多个线程来分配这些任务

假设我们可以分配到m个线程,但是有n个参数不同、计算相同的任务去分配到m个线程中,可能剩余a个线程

现在我要增加新的任务,只能要么等前面的任务计算完,或者起了新的进程,但是之前空余的线程将不能被有效利用

但任务队列实质就是实现了跨进程的队列。将任务交给huey,开启相应的worker(决定线程的数量)当新的任务进来调用时,可以有效地分配worker,而所有的函数调用都是异步执行的,效率更高~~

可以实现调用失败重试的操作,并实现延迟、定时任务的执行

任务序列、消息序列、RPC

消息序列(本地)

你去和服务员点餐,报出菜名,服务员返回能不能做

任务序列(本地+worker)

你去和服务员点餐,报出菜名,服务员安排给餐厅厨师,等待上菜

RPC(远程+server)

你去和服务员点餐,报出菜名,服务员会在线去问旗下的厨师,等待厨师反馈可以做后,由厨师左后交给服务员再上菜

results matching ""

    No results matching ""